package com.ren.fileuploadanddownload.service;

import com.ren.fileuploadanddownload.dao.UserFileDAO;
import com.ren.fileuploadanddownload.entity.UserFile;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.Date;
import java.util.List;

@Service
@Transactional
public class UserFileServiceImpl implements UserFileService{
    @Autowired
    private UserFileDAO userFileDAO;
    //根据用户id查询用户的所有文件信息并展示
    @Override
    public List<UserFile> findByUserId(Integer id) {
        return userFileDAO.findByUserId(id);
    }

    @Override
    public void save(UserFile userFile) {
        //是否是图片(当文件类型中含有image时，说明当前类型一定为图片类型)
        //userFile.setIsImg()
        String isImg = userFile.getType().startsWith("image") ? "Yes" : "No";
        userFile.setIsImg(isImg);
        //下载次数
        userFile.setDowncounts(0);
        //上传时间
        userFile.setUploadTime(new Date());
        //保存个人文件信息到数据库
        userFileDAO.save(userFile);
    }

    //根据文件id查询文件信息
    @Override
    public UserFile findByFileId(String id) {
        return  userFileDAO.findByFileId(id);

    }
    //更新下载次数
    @Override
    public void update(UserFile userFile) {
        userFileDAO.update(userFile);
    }
    //删除数据库中的文件信息
    @Override
    public void delete(String id) {
        userFileDAO.delete(id);
    }
}

